package org.example.user.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;

import java.io.Serializable;
import java.lang.Long;
import java.util.Date;
import java.lang.String;
import java.lang.Integer;

/**
 * 权限表 实体类。
 *
 * @author mybatis-flex-helper automatic generation
 * @since 1.0
 */
@Table(value = "sys_acl")
public class SysAclEntity {


    /**
     * 权限ID
     */
    @Id(keyType = KeyType.Auto)
    private Long id;

    /**
     * 权限名称（如：删除用户）
     */
    @Column(value = "name")
    private String name;

    /**
     * 权限码（如：user:delete）
     */
    @Column(value = "code")
    private String code;

    /**
     * 类型：1-API, 2-菜单, 3-按钮
     */
    @Column(value = "type")
    private Integer type;

    /**
     * 资源路径（API/菜单路由）
     */
    @Column(value = "url")
    private String url;

    /**
     * 逻辑删除
     */
    @Column(isLogicDelete = true)
    private Integer isDelete;

    /**
     * 创建人
     */
    @Column(value = "created_by")
    private String createdBy;

    /**
     * 更新人
     */
    @Column(value = "updated_by")
    private String updatedBy;

    /**
     * 创建时间
     */
    @Column(value = "created_time")
    private Date createdTime;

    /**
     * 更新时间
     */
    @Column(value = "updated_time")
    private Date updatedTime;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public Integer getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public String getUpdatedBy() {
        return updatedBy;
    }

    public void setUpdatedBy(String updatedBy) {
        this.updatedBy = updatedBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public Date getUpdatedTime() {
        return updatedTime;
    }

    public void setUpdatedTime(Date updatedTime) {
        this.updatedTime = updatedTime;
    }


}
